package com.kabongos.sources;

import java.io.Serializable;
import java.util.Date;

public abstract class Profissional implements Serializable {
    private static final long serialVersionUID = 1L;
    private String nome;
    private String cpf;
    private long matricula;
    private double salario;
    private Date dataContrato;
    private Date terminoContrato;
    private double multaRescisoria;

    public Profissional(String nome, String cpf) throws IllegalArgumentException {
        if (nome.equals("") || cpf.equals("")) {
            throw new IllegalArgumentException("Deve-se Preencher nome e cpf");
        }
        this.nome = nome;
        this.cpf = cpf;
    }

    public String getNome() {
        return nome;
    }

    public String getCpf() {
        return cpf;
    }

    public long getMatricula() {
        return matricula;
    }

    public void setMatricula(long matricula) {
        this.matricula = matricula;
    }

    public double getSalario() {
        return salario;
    }

    public void setSalario(double salario) {
        this.salario = salario;
    }

    public Date getDataContrato() {
        return dataContrato;
    }

    public void setDataContrato(Date dataContrato) {
        this.dataContrato = dataContrato;
    }

    public Date getTerminoContrato() {
        return terminoContrato;
    }

    public void setTerminoContrato(Date terminoContrato) {
        this.terminoContrato = terminoContrato;
    }

    public double getMultaRescisoria() {
        return multaRescisoria;
    }

    public void setMultaRescisoria(double multaRescisoria) {
        this.multaRescisoria = multaRescisoria;
    }

    public boolean equals(Object profissional) {
        if (profissional instanceof Profissional)
            return matricula == ((Profissional) profissional).getMatricula();
        return false;
    }
}
